Aspects of embodiments of the present invention relate to the field of three-dimensional (3D) scanning. In this process, a camera collects data from different views of an ordinary object, then aligns and combines the data to create a 3D model of the shape and color (if available) of the object. The term ‘mapping’ is also sometimes used to reflect the process of capturing a space or, more generally, a scene in 3D.
Generating 3D models in this way presents the particular challenge that substantially all of the sides of the object or portion of the scene need to be imaged in order to produce a complete model of the object. For example, it may be difficult or impossible to produce an accurate model of portions of a subject (e.g., an object or a scene) that are not captured during the 3D scanning process. In addition, failing to capture images of the object from some certain angles may result in holes, gaps, distortions, or other artifacts in the generated model (in some instances, the bottom surface of the object may be ignored if it is not relevant to the desired 3D model).
To cover sufficient color and geometric aspects of an object, the scanning process may capture hundreds of frames of the relevant portion of the scene. The amount of data that is produced and the processing time of the data can be very high. For instance, if an RGB-D camera produces 614 KB (˜VGA) data per frame, while the associated color camera produces 2764 KB (˜720 p) data per frame, at 15 frames per second and 30 seconds of scanning time, the amount of raw image data that is produced can be as high 1.42 GB. The processing time for building a 3D model also proportionally increases as a function of the amount of data that is produced. Furthermore, the user operating the camera may not completely capture the relevant aspects of the object, or over-capture (over sample) one side and under-capture (under sample) another view. The under-sampling may not produce the desired resolution or totally miss some sides of the object that may have a complex 3D shape, whereas over-sampling can produce redundant data (e.g. additional data that has low information content for the purpose of constructing the 3D model) that unnecessarily consumes the communication and computing resources of the scanning system.